home *** CD-ROM | disk | FTP | other *** search
-
- Jan 11, 1993
-
-
- AS225 Developer's Disk, Version 2.3
-
- Requires AmigaDOS 2.04 (V37) or greater
- Requires AS225 Release 2.
-
- Do not distribute this disk or any of its contents.
- "socket.library" will be included in the Release 2 of AS225.
- If you write an application which you want to release before
- the next release of AS225, contact CATS for socket.library
- licensing information.
-
- References in this document to "inet.library" and "socket.library"
- refer to versions 5.x and 4.x respectively. We have made every
- effort to ensure compatibility with previous versions of both but
- we make no promises!
-
- ================================================================
- ** NOTE ** ** NOTE ** ** NOTE ** ** NOTE ** ** NOTE ** ** NOTE **
- =================================================================
- This archive contains none of the required binaries. The socket.library
- (4.x) in question requires the 5.x inet.library which, in turn, requires
- SANA2 drivers and other support bibaries and test files. Therefore,
- developers will require the Beta of AS225 Release 2 for a full, proper
- developmemt environment.
-
-
- ---------------------------------------------------------------
- *** Socket.library 4.0 -requires- inet.library 5.0 or later ***
- ---------------------------------------------------------------
-
- This is a BETA version of this software. ALL the files on this disk
- should be considered beta and, as such, we may change them at will
- (theoretically because of the input from beta testers :))
-
- Inet.library 5.x
- -----------------
-
- There are two main things to note about the new inet.library (v5.0) :
-
- 1. It is now a SANA-II library in that you need SANA-II drivers to
- talk to your hardware. You will need the a2065.device (Ethernet)
- and/or the a2060.device(ARCNET) to speak to the Commodore boards.
- These drivers are on this disk in a directory called
- ":devs/networks". The proper place for these drivers is in a
- directory called "networks" in your system's "devs:" volume.
-
- example: "devs:networks/a2065.device"
-
- In addition, you need a file 'sana2_devs' which goes in the
- inet:s directory. This is described in detail below.
-
- 2. This new inet.library does NOT forward IP packets from board to
- board. The old inet.library did this. It shouldn't have. (See
- RFC 1122.) The old version (a) defaulted to ON, and (b) had
- no way to turn it off. The new one defaults to off and we now
- provide you with a "inet:c/configinet" which allows you to
- (a) set the status of this flag and (b) query the status of
- the flag.
-
- People using Amigas as gateways should take note. Docs for
- 'configinet' are in the docs directory.
-
-
- Socket.library V4.0 (18476 bytes)
- -----------------------------------
-
- This new socket.library has the following additions and changes :
-
- 1. The addition of a standard means to launch server programs
- (ftpd, rshd, etc.) and to pass ownership of a given socket
- from one process to another. See the functions s_inherit()
- and s_release(). The example server 'timed' source shows how
- to do this.
-
- 2. Support for those wishing to mix their compiler's stdio
- functions with sockets. A new function called s_dev_list()
- that gives the ability to tell socket.library about your
- stdio filehandle array. Example source code is provided for
- which shows how to write replacement functions for your
- compiler's 'read()', 'open()' and 'write()' functions.
-
- 3. Domain Name Service (as of v4.2).
-
- The Sana2_devs file
- -------------------
-
- Inet.library has received some major changes in terms of
- it's communication with networking hardware. As of release 5.0,
- all of the hardcoded device drivers (such as hardcoded A2065,
- A2060, or SLIP drivers) have been removed from the code, and
- replaced with an interface to standardized SANA-II drivers.
- Naturally, this causes certain changes to AS225 installations:
-
- Most importantly, there exists a new file "inet:s/sana2_devs"
- which must exist in order for inet.library to operate. A sample
- of the file follows:
-
- #Sana II devices used by the inet.library
- #device path Unit No IPType ARPType (opt. hardware addr)
- #--------------------------------------------------------------------
- devs:Networks/a2065.device 0 2048 2054
- devs:Networks/a2065.device 1 2048 2054
- devs:Networks/a2060.device 0 240 241
- devs:Networks/slip.device 0 1 2
-
- Each line in the file represents an inet.library device, and
- these devices are numbered, beginning with the first entry in
- the file. The name that inet.library will know the device by is
- simply an 's', followed by the number of the entry in the file -
- starting with zero. In our example, the first line relates
- to 's0', the second to 's1', the third to 's2', and the last to
- 's3'.
-
- Since the hardcoded drivers are no longer included in
- inet.library, any and all references users may be making to them
- (such as references to 'ae0' or 'ae1' in their inet:s/start-inet
- files) are now faulty.
-
- Each line is broken up into five fields -- the pathname of
- the SANA-II device, the unit number to configure, the ip and arp
- packet types, and an optional hardware address.
-
- The path of the SANA-II device is fairly self-explanatory.
- Most SANA-II devices can be found in devs:Networks.
-
- The unit number is used to differentiate between multiple
- boards of the same type in a machine. For instance, if you plug
- two A2065 boards into an Amiga, the first board is unit 0, the
- second is unit 1, and so on.
-
- The IP and ARP types are standardized "packet types". It is
- by these numbers that inet.library is capable of determining
- which packets coming over the network are TCP/IP packets.
- Unfortunately, even though these numbers are standardized, they
- vary between different types of hardware. For Ethernet, they are
- 2048 and 2054, respectively. Arcnet seems to have three
- seperate 'standards', but the most common usage seems to be 240
- and 241 respectively. SLIP, as in our example above, has no
- notion of packet types, so any two different numbers will do.
-
- If you wish to use inet.library with an unusual SANA-II
- device that doesn't have an inherent hardware address, you can
- optionally specify one. The format is a 0x, followed by any
- number of hex digits (up to the SANA-II limit of 32). An
- example might be 0x8 for hardware address 8.
-
-
-
-
- Stuff
- -----
-
- Also included are the latest network includes and some example
- source code.
-
- In order for you to make use of the new libraries with the old
- as225 we are providing BETA copies of the new inet:c/server/*
- binaries. These are still premliminary and have to be given
- another once over. All the inet:*/* stuff that is not in this
- archive will be following shortly. This is released in the
- meantime to get folks started.
-
-
- ===============================================================
-
-
- NOTE: The functions in the socket.library use many of the 2.0
- AmigaOS calls. This means that any and all applications that use
- this library will work ONLY under the 2.0 OS (and later versions).
-
- The examples directory contains the source to our new timed
- program (timed.c), an advanced example.
-
- New in this release:
-
- 1. An example timed server demonstrating the use of the new
- s_inherit() and s_release() functions. This example shows the
- one, true way to write a server that gets launched by the
- new inetd daemon.
-
- 2. Contains source and binary for a file called 'sas_test' that
- demonstrates the use of the s_dev_list() function.
-
- The include directory contains the header files for use with the
- socket.library. This version does not supply a copy of the Manx
- pragmas. We do provide the fd file so generating Manx
- pragmas/stubs should be easy enough.
-
- Some header files have names which conflict with standard SAS or
- Manx headers (in particular, signal.h and sys/types.h). You'll
- have to figure out how you want to resolve these conflicts
- depending on whether you want source compatibility with Un*x, etc.
-
- COMPILER PROBLEMS:
-
- There are a few function calls that will make an ANSI C compiler
- spit forth warning/errors. In particular, several of the inet_XXX
- functions pass (4 byte long) structures as their arguments. ANSI
- compilers -hate- this type of thing. In order to fix this we
- would make these function incompatible with the way the U*IX calls
- work. Rather than do that we have opted to have you suffer some
- compiler warnings. Just check your returns and be sure you are
- getting what you asked for. Some odd looking casts will generally
- fix the compiler warning messages.
-
- CHANGES:
-
- The visible changes are the addition of the functions
- "s_inherit(), s_release() and s_dev_list(). The autodocs and
- includes have been changed to reflect this and a few autodoc
- entries have been clarified or corrected. The contents of inet/c
- may have been updated to include new utilities.
-
-
- BUGS:
-
- Please promptly report all bugs as follows:
-
- Mail:
-
- European developers should mail bugs to their support manager.
- U.S./others mail to: Amiga Software Engineering, ATTN: BUG REPORTS,
- CBM, 1200 Wilson Drive, West Chester, PA., 19380, USA
-
- European ADSP users:
-
- Post 2.0 bugs to asdp.14.bugs, others to adsp.bugs
-
- UUCP:
-
- to uunet!cbmvax!bugs OR rutgers!cbmvax!bugs OR bugs@commodore.COM
- (enhancement requests to cbmvax!suggestions instead of cbmvax!bugs)
- BIX:
-
- Post bugs in the bugs topic of your closed developer conference.
- (in this case amiga.beta.inet)
-
-
- Legalese:
-
- This shared socket library (and it's documentation) are Copyright
- © 1991, 1992, 1993 Commodore-Amiga, Inc. All Rights Reserved.
-
- Parts of this shared socket library and the associated header
- files are derived from code which is:
-
- Copyright (c) 1983 Regents of the University of California.
- All rights reserved.
-
- Redistribution and use in source and binary forms are permitted
- provided that the above copyright notice and this paragraph are
- duplicated in all such forms and that any documentation,
- advertising materials, and other materials related to such
- distribution and use acknowledge that the software was developed
- by the University of California, Berkeley. The name of the
- University may not be used to endorse or promote products derived
- from this software without specific prior written permission.
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
-